/**
 * 
 */
package com.tio.live.main.model.db02;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.tio.live.main.model.db02.vo.UserVo;
import com.tio.manager.utils.BeanUtils;

/**
 * 用户表
 * 
 */
@SuppressWarnings("serial")
public class User implements Serializable
{	
	/**
	 * 
	 */
	public User() 
	{

	}
//	
//	public static String insertSql = "insert into user (id,roomnum,domain,loginname,pwd,level,srcnick,invitecode,nick,avatar,avataralt,ipid,thirdstatus,channelid,mainuid,remindflag,registertype,reghref,regchannel,regactflag,robot,remark,delsign,status,createtime,updatetime) "
//			+ "values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
//	public static String deleteSql = "delete from user where id = ? ";
//	public static String updateSql = "update user set id=?,roomnum=?,domain=?,loginname=?,pwd=?,level=?,srcnick=?,invitecode=?,nick=?,avatar=?,avataralt=?,ipid=?,thirdstatus=?,channelid=?,mainuid=?,remindflag=?,registertype=?,reghref=?,regchannel=?,regactflag=?,robot=?,remark=?,delsign=?,status=?,createtime=?,updatetime=? where id = ?";
//	public static String pageQuerySql = "select * from user where 1=1";
//	public static String selectSql = "select * from user where id = ?";
//	
	
	/**
	 * @param args
	 */
	public static void main(String[] args) 
	{
		
	}
	
	/**
	 * id
	 */
	private Integer id;
	
	
	/**
	 * 房间号
	 */
	private java.lang.String roomnum;
	
	
	/**
	 * 私有域名
	 */
	private java.lang.String domain;
	
	
	/**
	 * 登录名称
	 */
	private java.lang.String loginname;
	
	
	/**
	 * 密码
	 */
	private java.lang.String pwd;
	
	
	/**
	 * 等级
	 */
	private Integer level;
	
	
	/**
	 * 原始昵称
	 */
	private java.lang.String srcnick;
	
	
	/**
	 * 邀请码
	 */
	private java.lang.String invitecode;
	
	
	/**
	 * 昵称
	 */
	private java.lang.String nick;
	
	
	/**
	 * 头像url
	 */
	private java.lang.String avatar;
	
	
	/**
	 * 头像说明
	 */
	private java.lang.String avataralt;
	
	
	/**
	 * 注册ip
	 */
	private Integer ipid;
	
	
	/**
	 * 三方登录状态：1：正式（非三方登录）；2：初创
	 */
	private Byte thirdstatus;
	
	
	/**
	 * 渠道id
	 */
	private Integer channelid;
	
	
	/**
	 * 主账号uid
	 */
	private Integer mainuid;
	
	
	/**
	 * 推送设置：1：推送；2：不推送
	 */
	private Byte remindflag;
	
	
	/**
	 * 类型：1：pc;2:安卓；3：ios
	 */
	private Byte registertype;
	
	
	/**
	 * 注册页面
	 */
	private java.lang.String reghref;
	
	
	/**
	 * 注册来源
	 */
	private java.lang.String regchannel;
	
	
	/**
	 * 注册活动标识：1：是；2：否
	 */
	private Byte regactflag;
	
	
	/**
	 * 机器人标识：1:是；2：否
	 */
	private Byte robot;
	
	
	/**
	 * 备注
	 */
	private java.lang.String remark;
	
	
	/**
	 * 删除标识
	 */
	private java.lang.String delsign;
	
	
	/**
	 * 用户状态, 1：正常，2：未激活；3：驳回；4：违规，5：封停，6：注销
	 */
	private Byte status;
	
	
	/**
	 * 创建时间
	 */
	private java.util.Date createtime;
	
	/**
	 * 用作时间段的查询条件
	 * 创建时间
	 */
	private java.util.Date createtime_start;
	
	/**
	 * 用作时间段的查询条件
	 * 创建时间
	 */
	private java.util.Date createtime_end;
	
	/**
	 * 修改时间
	 */
	private java.util.Date updatetime;
	
	/**
	 * 用作时间段的查询条件
	 * 修改时间
	 */
	private java.util.Date updatetime_start;
	
	/**
	 * 用作时间段的查询条件
	 * 修改时间
	 */
	private java.util.Date updatetime_end;
	
	
	/**
	 * id
	 * @param id
	 * 
	 */
	public void setId(Integer id)
	{
		this.id = id;
	}
	
	/**
	 * id
	 */
	public Integer getId()
	{
		return this.id;
	}
	
	/**
	 * 房间号
	 * @param roomnum
	 * 
	 */
	public void setRoomnum(java.lang.String roomnum)
	{
		this.roomnum = roomnum;
	}
	
	/**
	 * 房间号
	 */
	public java.lang.String getRoomnum()
	{
		return this.roomnum;
	}
	
	/**
	 * 私有域名
	 * @param domain
	 * 
	 */
	public void setDomain(java.lang.String domain)
	{
		this.domain = domain;
	}
	
	/**
	 * 私有域名
	 */
	public java.lang.String getDomain()
	{
		return this.domain;
	}
	
	/**
	 * 登录名称
	 * @param loginname
	 * 
	 */
	public void setLoginname(java.lang.String loginname)
	{
		this.loginname = loginname;
	}
	
	/**
	 * 登录名称
	 */
	public java.lang.String getLoginname()
	{
		return this.loginname;
	}
	
	/**
	 * 密码
	 * @param pwd
	 * 
	 */
	public void setPwd(java.lang.String pwd)
	{
		this.pwd = pwd;
	}
	
	/**
	 * 密码
	 */
	public java.lang.String getPwd()
	{
		return this.pwd;
	}
	
	/**
	 * 等级
	 * @param level
	 * 
	 */
	public void setLevel(Integer level)
	{
		this.level = level;
	}
	
	/**
	 * 等级
	 */
	public Integer getLevel()
	{
		return this.level;
	}
	
	/**
	 * 原始昵称
	 * @param srcnick
	 * 
	 */
	public void setSrcnick(java.lang.String srcnick)
	{
		this.srcnick = srcnick;
	}
	
	/**
	 * 原始昵称
	 */
	public java.lang.String getSrcnick()
	{
		return this.srcnick;
	}
	
	/**
	 * 邀请码
	 * @param invitecode
	 * 
	 */
	public void setInvitecode(java.lang.String invitecode)
	{
		this.invitecode = invitecode;
	}
	
	/**
	 * 邀请码
	 */
	public java.lang.String getInvitecode()
	{
		return this.invitecode;
	}
	
	/**
	 * 昵称
	 * @param nick
	 * 
	 */
	public void setNick(java.lang.String nick)
	{
		this.nick = nick;
	}
	
	/**
	 * 昵称
	 */
	public java.lang.String getNick()
	{
		return this.nick;
	}
	
	/**
	 * 头像url
	 * @param avatar
	 * 
	 */
	public void setAvatar(java.lang.String avatar)
	{
		this.avatar = avatar;
	}
	
	/**
	 * 头像url
	 */
	public java.lang.String getAvatar()
	{
		return this.avatar;
	}
	
	/**
	 * 头像说明
	 * @param avataralt
	 * 
	 */
	public void setAvataralt(java.lang.String avataralt)
	{
		this.avataralt = avataralt;
	}
	
	/**
	 * 头像说明
	 */
	public java.lang.String getAvataralt()
	{
		return this.avataralt;
	}
	
	/**
	 * 注册ip
	 * @param ipid
	 * 
	 */
	public void setIpid(Integer ipid)
	{
		this.ipid = ipid;
	}
	
	/**
	 * 注册ip
	 */
	public Integer getIpid()
	{
		return this.ipid;
	}
	
	/**
	 * 三方登录状态：1：正式（非三方登录）；2：初创
	 * @param thirdstatus
	 * 
	 */
	public void setThirdstatus(Byte thirdstatus)
	{
		this.thirdstatus = thirdstatus;
	}
	
	/**
	 * 三方登录状态：1：正式（非三方登录）；2：初创
	 */
	public Byte getThirdstatus()
	{
		return this.thirdstatus;
	}
	
	/**
	 * 渠道id
	 * @param channelid
	 * 
	 */
	public void setChannelid(Integer channelid)
	{
		this.channelid = channelid;
	}
	
	/**
	 * 渠道id
	 */
	public Integer getChannelid()
	{
		return this.channelid;
	}
	
	/**
	 * 主账号uid
	 * @param mainuid
	 * 
	 */
	public void setMainuid(Integer mainuid)
	{
		this.mainuid = mainuid;
	}
	
	/**
	 * 主账号uid
	 */
	public Integer getMainuid()
	{
		return this.mainuid;
	}
	
	/**
	 * 推送设置：1：推送；2：不推送
	 * @param remindflag
	 * 
	 */
	public void setRemindflag(Byte remindflag)
	{
		this.remindflag = remindflag;
	}
	
	/**
	 * 推送设置：1：推送；2：不推送
	 */
	public Byte getRemindflag()
	{
		return this.remindflag;
	}
	
	/**
	 * 类型：1：pc;2:安卓；3：ios
	 * @param registertype
	 * 
	 */
	public void setRegistertype(Byte registertype)
	{
		this.registertype = registertype;
	}
	
	/**
	 * 类型：1：pc;2:安卓；3：ios
	 */
	public Byte getRegistertype()
	{
		return this.registertype;
	}
	
	/**
	 * 注册页面
	 * @param reghref
	 * 
	 */
	public void setReghref(java.lang.String reghref)
	{
		this.reghref = reghref;
	}
	
	/**
	 * 注册页面
	 */
	public java.lang.String getReghref()
	{
		return this.reghref;
	}
	
	/**
	 * 注册来源
	 * @param regchannel
	 * 
	 */
	public void setRegchannel(java.lang.String regchannel)
	{
		this.regchannel = regchannel;
	}
	
	/**
	 * 注册来源
	 */
	public java.lang.String getRegchannel()
	{
		return this.regchannel;
	}
	
	/**
	 * 注册活动标识：1：是；2：否
	 * @param regactflag
	 * 
	 */
	public void setRegactflag(Byte regactflag)
	{
		this.regactflag = regactflag;
	}
	
	/**
	 * 注册活动标识：1：是；2：否
	 */
	public Byte getRegactflag()
	{
		return this.regactflag;
	}
	
	/**
	 * 机器人标识：1:是；2：否
	 * @param robot
	 * 
	 */
	public void setRobot(Byte robot)
	{
		this.robot = robot;
	}
	
	/**
	 * 机器人标识：1:是；2：否
	 */
	public Byte getRobot()
	{
		return this.robot;
	}
	
	/**
	 * 备注
	 * @param remark
	 * 
	 */
	public void setRemark(java.lang.String remark)
	{
		this.remark = remark;
	}
	
	/**
	 * 备注
	 */
	public java.lang.String getRemark()
	{
		return this.remark;
	}
	
	/**
	 * 删除标识
	 * @param delsign
	 * 
	 */
	public void setDelsign(java.lang.String delsign)
	{
		this.delsign = delsign;
	}
	
	/**
	 * 删除标识
	 */
	public java.lang.String getDelsign()
	{
		return this.delsign;
	}
	
	/**
	 * 用户状态, 1：正常，2：未激活；3：驳回；4：违规，5：封停，6：注销
	 * @param status
	 * 
	 */
	public void setStatus(Byte status)
	{
		this.status = status;
	}
	
	/**
	 * 用户状态, 1：正常，2：未激活；3：驳回；4：违规，5：封停，6：注销
	 */
	public Byte getStatus()
	{
		return this.status;
	}
	
	/**
	 * 创建时间
	 * @param createtime
	 * 
	 */
	public void setCreatetime(java.util.Date createtime)
	{
		this.createtime = createtime;
	}
	
	/**
	 * 创建时间
	 */
	public java.util.Date getCreatetime()
	{
		return this.createtime;
	}
	
	/**
	 * 创建时间
	 * @param createtime_start
	 * 
	 */
	public void setCreatetime_start(java.util.Date createtime_start)
	{
		this.createtime_start = createtime_start;
	}
	
	/**
	 * 创建时间
	 */
	public java.util.Date getCreatetime_start()
	{
		return this.createtime_start;
	}
	
	/**
	 * 创建时间
	 * @param createtime_end
	 * 
	 */
	public void setCreatetime_end(java.util.Date createtime_end)
	{
		this.createtime_end = createtime_end;
	}
	
	/**
	 * 创建时间
	 */
	public java.util.Date getCreatetime_end()
	{
		return this.createtime_end;
	}
	/**
	 * 修改时间
	 * @param updatetime
	 * 
	 */
	public void setUpdatetime(java.util.Date updatetime)
	{
		this.updatetime = updatetime;
	}
	
	/**
	 * 修改时间
	 */
	public java.util.Date getUpdatetime()
	{
		return this.updatetime;
	}
	
	/**
	 * 修改时间
	 * @param updatetime_start
	 * 
	 */
	public void setUpdatetime_start(java.util.Date updatetime_start)
	{
		this.updatetime_start = updatetime_start;
	}
	
	/**
	 * 修改时间
	 */
	public java.util.Date getUpdatetime_start()
	{
		return this.updatetime_start;
	}
	
	/**
	 * 修改时间
	 * @param updatetime_end
	 * 
	 */
	public void setUpdatetime_end(java.util.Date updatetime_end)
	{
		this.updatetime_end = updatetime_end;
	}
	
	/**
	 * 修改时间
	 */
	public java.util.Date getUpdatetime_end()
	{
		return this.updatetime_end;
	}
	
	
	/**
	 * 根据listMap生成list<T>
	 * @param listMap
	 * @return
	 */
	public static List<UserVo> wrapFromListMap(List<Map<String, Object>> listMap)
	{
		if (listMap == null || listMap.size() == 0) {
			return null;
		}

		List<UserVo> ret = new ArrayList<UserVo>(listMap.size());
		for (Map<String, Object> map : listMap) {
			ret.add(wrapFromMap(map));
		}
		return ret;
	}
	
	/**
	 * 根据Map对象生成vo对象
	 * @param user
	 * @return
	 */
	public static UserVo wrapFromMap(Map<String, Object> map)
	{
		UserVo userVo = new UserVo();
		BeanUtils.copyProperties(userVo, map);
		return userVo;
	}
	
	/**
	 * 根据model对象生成Map对象，map的key是java的字段名，一般形如:userName这样
	 * @param user
	 * @return
	 */
	public static Map<String, Object> wrapToMap(User user)
	{
		Map<String, Object> map = new HashMap<String, Object>();
		BeanUtils.copyProperties(map, user);
		return map;
	}

	/**
	 * 根据model对象生成vo对象
	 * @param user
	 * @return
	 */
	public static UserVo wrapToVo(User user)
	{
		UserVo userVo = new UserVo();
		BeanUtils.copyProperties(userVo, user);
		return userVo;
	}
	
	/**
	 * 根据vo对象生成model对象
	 * @param userVo
	 * @return
	 */
	public static User wrapFromVo(UserVo userVo)
	{
		User user = new User();
		BeanUtils.copyProperties(user, userVo);
		return user;
	}
}
